home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / qex / qexbert / comport.h < prev    next >
Text File  |  1993-10-20  |  1KB  |  43 lines

  1. /* Interrupt-driven serial input functions */
  2.  
  3. typedef struct
  4. {
  5.     int port;
  6.     int base_addr;
  7.     int intlev;
  8.     unsigned int max_buffer;
  9.     unsigned int buffer_in;
  10.     unsigned int buffer_out;
  11.     unsigned int buffer_length;
  12.     unsigned int near_full;
  13.     unsigned int near_empty;
  14.     char bf_hndshk;
  15.     char *buffer;
  16.     char overrun_flag;
  17.     char shake_type;
  18. #define CM_RTS        1
  19. #define CM_XOFF        2
  20.     void interrupt (*oldfunc)();
  21.     int portidx;
  22. } COMM;
  23.  
  24. COMM *open_com(int cport, unsigned int baud, int parity, int stopbits,
  25.     int numbits, int shaketype, unsigned int buflen);
  26. void close_com(COMM *com);
  27. void reset_buffer(COMM *com);
  28. int com_in(COMM *com);
  29. int send_com(COMM *com, char c, int handshake);
  30. int comm_cd(COMM *com);
  31. int comm_cts(COMM *com);
  32. int comm_dsr(COMM *com);
  33. void shut_down(COMM *com);
  34. char *comm_errmsg(int errno);
  35.  
  36. extern int comm_errno;
  37. #define CM_NOMEMORY        1
  38. #define CM_TOOMANY        2
  39. #define CM_INVALID        3
  40. #define CM_OVERRUN        4
  41. #define CM_TIMEOUT        5
  42. #define CM_NERRCODE        5
  43.